/*
	ISR.h
	
	header for basic functionality related to setting up and disabling ISRs
	
	Author: Aidan Goddard 6/6/13
*/

#ifndef IST_H_INCLUDED
#define IST_H_INCLUDED

int RegisterISR(unsigned char vector, uint64_t isr_address, unsigned short selector, int cpl, unsigned char gate_type, unsigned char stack);
int DisableISR(unsigned char vector);

#define IST_NO_STACK 0
#define IST_1 1
#define IST_2 2
#define IST_3 3
#define IST_4 4
#define IST_5 5
#define IST_6 6
#define IST_7 7

#define CPL_0 0
#define CPL_3 3

#define GATE_TRAP 0xf
#define GATE_INTERRUPT 0xe





#endif












